
import request from '@/utils/request'
import http from "@/utils/http";
// 报表 统计

// export const editRecords = (params) => {
//   return http.post("/project/check/review", params);
// };
// const res = await editRecords(params);

// export const getList = (params) => {
//   return http.get('/xxx',params);
// };


const reportUrl = '/statistics/'
const visualUrl = '/visual/statistics/'

// ---------------------------------------- 统计报表
// 固定列表
export function getFixedReport(params) {
  // return http.get('/statistics/getFixedReport',params);
  return request({
    url: reportUrl+ 'getFixedReport',
    method: 'get',
    params
  })
}

// 导出 固定报表
// export function fixedReportExport(query) {
//   return request({
//     url: reportUrl+ 'fixedReportExport',
//     method: 'get',
//     responseType: "blob",
//     params: query
//   })
// }
//导出
export const exportFile = (url,params = {}) => {
  return http.get(url, 
    params,
    { responseType: "blob"});
};

// ---------------------------------------- 自定义报表 
export const zdyApi = {
  // 自定义表头行
  getCustomstats: () => {
    return request({
      url: '/cfgStatistics/getCustomstats',
      method: 'get'
    })
  },
  // 自定义表头列
  fiveYHonorStats: (params) => {
    return request({
      url: '​/cfgStatistics​/getCustomstatscol',
      method: 'get',
      params
    })
  }
}

// 获取通用配置 自定义报表中获取类型选项，树结构选项 等数据
export function getCategorys(params) {
  return request({
    url: "/cfg/getCategorys",
    method: "get",
    params: params,
  });
}

// ----------------------------------------  统计汇总
export const visualApi = {
  // 纵向项目统计
  zxStatistics: (params) => {
    return request({
      url: visualUrl+ 'zxStatistics',
      method: 'get',
      params
    })
  },
  // 2-横向项目统计
    hxStatistics: (params) =>  {
    return request({
      url: visualUrl+ 'hxStatistics',
      method: 'get',
      params
    })
  },
  //  返回年度成果量和历史成果量
    achieveStats: (params) => {
    return request({
      url: visualUrl+ 'achieveStats',
      method: 'get',
      params
    })
  },
  //  科研学术成果统计
    acadAchieveStats: (params) => {
    return request({
      url: visualUrl+ 'acadAchieveStats',
      method: 'get',
      params
    })
  },
  //  科研人员统计
    totalResearchers: (params) => {
    return request({
      url: visualUrl+ 'totalResearchers',
      method: 'get',
      params
    })
  }
}

export const echartsApi = {
  // 1 近五年度纵向，横向，校级项目量统计
  fiveYProjectsStats: () => {
    return request({
      url: visualUrl+ 'fiveYProjectsStats',
      method: 'get'
    })
  },  
  // 本年度学院科研立项经费TOP5 [项目总经费,到账经费]
  researchFundingTop5: () => {
    return request({
      url: visualUrl+ 'researchFundingTop5',
      method: 'get'
    })
  },
  // 近五年论文发表  
  fiveYPaperStats: () => {
    return request({
      url: visualUrl+ 'fiveYPaperStats',
      method: 'get'
    })
  },

  // 2 本年度学校按项目级别的立项情况 [国家级 部级 省级 地市级 校级（纵校+校级）横向课题(横向项目)]
  projectLevelStats: () => {
    return request({
      url: visualUrl+ 'projectLevelStats',
      method: 'get'
    })
  },
  // 本年度项目经费 [纵,横,校]
  projectExpenditure: (params) => {
    return request({
      url: visualUrl+ 'projectExpenditure',
      method: 'get',
      params
    })
  },
  // 本年度到账经费 [纵,横,校] 
  projectFundsReceived: () => {
    return request({
      url: visualUrl+ 'projectFundsReceived',
      method: 'get'
    })
  },
  // 近五年专利发表
  fiveYPatentStats: () => {
    return request({
      url: visualUrl+ 'fiveYPatentStats',
      method: 'get'
    })
  },

  // 3 本年度学院成果TOP5
  unitAchievementStatsTop5: () => {
    return request({
      url: visualUrl+ 'unitAchievementStatsTop5',
      method: 'get'
    })
  },
  // 近五年成果数量
  fiveYTotalAchievement: () => {
    return request({
      url: visualUrl+ 'fiveYTotalAchievement',
      method: 'get'
    })
  },
  // 近五年获奖情况
  fiveYHonorStats: () => {
    return request({
      url: visualUrl+ 'fiveYHonorStats',
      method: 'get'
    })
  },

}

// ---------------------------------------- request请求
// post
// export function xxx(params) {
//   return request({
//     url: '/statistics/getFixedReport',
//     headers: {
//       isToken: false,
//       repeatSubmit: false
//     },
//     method: 'post',
//     data: params,
//     timeout: 20000
//   })
// }
